<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <script src="script/react.development.js"></script>
  <script src="script/react-dom.development.js"></script>
  <script src="script/babel.min.js"></script>
</head>
<body>
  <div id="root"></div>

  <script type="text/babel">
    /**
     * 虚拟DOM的好处：
     *    1.降低API复杂度
     *    2.解决兼容问题
     *    3.提升性能（减少DOM的不必要操作）
     * 
     * 每当我们调用root.render()时，页面就会发生重新渲染
     * React会通过diffing算法，将新的元素和旧的元素进行比较
     * 通过比较找到发生变化的元素，并且只对变化的元素进行修改，没有发生的变化不予处理
     */
    const name = '张三'
    const div = <div>{name}</div>
    const root = ReactDOM.createRoot(document.getElementById('root'))
    root.render(div)
  </script>
</body>
</html>
